<div class='doc'>
<h1>What is WikiModel?</h1>
<ul>
  <li>WikiModel is a Data Model defining the structure of wiki documents<ul>
  <li>Defines wiki document elements and rules of their possible imbrications (like DTD/Schema for XML documents)</li>
</ul>
</li>
  <li>WikiModel is an API providing access to the structure of wiki documents<ul>
  <li>This API gives access to and control over the internal structure of individual wiki documents</li>
  <li>Usage of this API guaranties that the accessed wiki documents respect the structure defined by the model
 </li>
</ul>
</li>
</ul>
<h1>What WikiModel isn&rsquo;t?</h1>
<ul>
  <li>It is not a Wiki Engine</li>
  <li>It does not work with a data storage, versioning, access rights,&hellip;</li>
  <li>It does not check or validate references between documents</li>
</ul>
<h1>How can WikiModel be used?</h1>
<ul>
  <li>As a rendering engine to transform various wiki  syntaxes to formatted content (HTML, PDF, TeX, &hellip;)</li>
  <li>As a parser for semantic annotations</li>
</ul>
<h1>How WikiModel Works?</h1>
<p><img src='HowWikiModelWorks.png' title='How WikiModel Works?'/></p>
<h1>WikiModel v1</h1>
<p><img src='WikiModel_v1.png' title=''/></p>
<h1>WikiModel v2</h1>
<p><img src='WikiModel_v2.png' title='WikiModel v2'/></p>
<h1>WikiModel v1 and v2: Comparision</h1>
<h2>WikiModel v1</h2>
<ul>
  <li>Exists only one WikiModel-specific  syntax </li>
  <li>Real grammar based parser (JavaCC)</li>
  <li>Possibility to work with “embedded” documents</li>
  <li>Semantic statements about documents </li>
</ul>
<h2>WikiModel v2 </h2>
<ul>
  <li>Keeps all the features of v1 +</li>
  <li>All parsers much faster than v1</li>
  <li>CommonSyntax manipulates with greater number of structural elements than in v1</li>
  <li>Possibilities to work with documents written with multiple syntaxes</li>
  <li>All parsers are based on real JavaCC grammars</li>
  <li>Possibility to work with “embedded” documents</li>
  <li>Semantic statements about parts of the text  </li>
</ul>
<h1>How WikiParser (v2) works</h1>
<p><img src='HowWikiParserV2Works.png' title='How WikiParser (v2) works'/></p>
<h1>Features of WikiModel v2</h1>
<ul>
  <li>WikiModel itself does not depend on any particular wiki syntax<ul>
  <li>WikiModel manipulates with a fixed number of structural element types and defines their possible assembly/imbrication</li>
  <li>Simplified structure (relative to XHTML)  greatly simplifies the validation and manipulation of documents</li>
  <li>The document schema is sufficiently flexible to simulate almost any HTML formatting (like tables with embedded lists, headers and paragraphs)</li>
  <li>This is a super-set of structural elements existing in others wikies, so the information from any wiki can be imported without loosing the information or structure</li>
</ul>
</li>
  <li>Contains notions of semantic statements about the  documents and parts of a document</li>
  <li>CommonSyntax manipulates with all possible structural elements defined by the WikiModel v2</li>
  <li>Parsers for multiple wiki syntaxes are available (JspWiki, XWiki, MediaWiki, Creole, GoogleCode wiki, &hellip;). <ul>
  <li>All parsers give access to the valid structure of documents. If a document contains non-valid elements (non-closed markup or overlapping elements) then it will be fixed automatically</li>
</ul>
</li>
</ul>
<h1>CommonSyntax: Example</h1>
<p><img src='CommonSyntaxExample1.png' title='CommonSyntax: Example'/></p>
<h1>CommonSyntax: How it can be used</h1>
<p><img src='CommonSyntaxExample2.png' title='CommonSyntax: How it can be used'/></p>
<div style='height:2em;'></div>
</div>
